// ml:run = $bin < input
#include <cstdio>
#include <cstring>
#define N 2005
#define M 2005

int next[M];

void getNext(char* p, int len, int* next){
    int j=0, k=-1;
    next[j]=k;
    while(j<len){
        if(k==-1||p[j]==p[k])
            next[++j]=++k;
        else k=next[k];
    }
}

int kmpMatch(char* s, int ls, char* p, int lp){
    getNext(p, lp, next);
    int i=0, j=0;
    while(i<ls){
        if(j==-1||s[i]==p[j]){
            i++;j++;
        }else{
            j=next[j];
        }
        if(j==lp){
            return i-lp;
        }
    }
    return -1;
}

int n;
char rec[505][2005];
int upper[505];

int main()
{
    int t;
    scanf("%d", &t);
    for(int tt=1;tt<=t;tt++)
    {
        printf("Case #%d: ",tt);
        scanf("%d", &n);
        for(int i=1;i<=n;i++){
            scanf("%s", rec[i]);
            upper[i]=i;
        }
        for(int i=2;i<=n;i++){
            int j=i-1;
            while(j>0){
                if (kmpMatch(rec[i], strlen(rec[i]), rec[j], strlen(rec[j])) != -1) {
                    //printf("%d %d\n", i, j);
                    upper[i]=upper[j];
                    j=upper[j]-1;
                }
                else break;
            }
        }
        bool ok=false;
        for(int i=n;i>=2;i--){
            if(upper[i]!=1){
                ok=true;
                printf("%d\n", i);
                break;
            }
        }
        if(!ok)printf("-1\n");
    }
}

